/**
 * LetterAssemblerFactory.java | Created on 18 09 2010
 */
package com.pacm.util;

import com.pacm.assembler.*;
import com.pacm.assembler.LetterAssembler;
import com.pacm.assembler.UnsupportedLetterAssembler;

/**
 * The letter assembler factory
 *
 * @author Paul Augustine C. Mendoza
 */
public final class LetterAssemblerFactory {

    private LetterAssemblerFactory() {
        // Do nothing...
    }

    public static LetterAssembler getPrinter(LetterPrinterType letterPrinterType) {
        LetterAssembler assembler;
        switch (letterPrinterType) {
            case VERTICAL:
                assembler = new VerticalLetterAssembler();
                break;
            case HORIZONTAL:
                assembler = new HorizontalLetterAssembler();
                break;
            default:
                assembler = new UnsupportedLetterAssembler();
        }
        return assembler;
    }
}
